|
|
| Emplacement du menu |
|---|
| Draft/BIM : Modification → Convertir un objet Draft en esquisse et inversement |
| Ateliers |
| Draft, BIM |
| Raccourci par défaut |
| Aucun |
| Introduit dans la version |
| - |
| Voir aussi |
| Aucun |
La commande Draft Draft <=> Esquisse convertit les objets Draft en Sketcher Esquisses et inversement.
Conversion d'objets Draft en esquisses de Sketcher
Voir aussi : Autogenerated API documentation et FreeCAD Débuter avec les scripts.
Pour convertir des objets en esquisses, utilisez la méthode make_sketch (introduit dans la version 0.19) du module Draft. Cette méthode remplace la méthode dépréciée makeSketch.
sketch = make_sketch(objects_list, autoconstraints=False, addTo=None, delete=False, name="Sketch", radiusPrecision=-1, tol=1e-3)
objects_list contient les objets à convertir. Il s'agit soit d'un objet unique, soit d'une liste d'objets. Les objets Draft, les objets Part::Feature et les objets Part.Shape sont pris en charge.autoconstraints est True, des contraintes coïncidentes sont ajoutées aux noeuds appartenant au même objet source.addTo est l'objet esquisse existant auquel la géométrie est ajoutée. S'il n'est pas fourni, une nouvelle esquisse est créée.delete est True, les objets sources sont supprimés.name est le nom de la nouvelle esquisse.radiusPrecision indique comment les contraintes de rayon doivent être traitées :
-1 pour désactiver les contraintes de rayon.0 pour ajouter des contraintes de rayon individuelles.tol est la tolérance utilisée pour vérifier si les formes sont planes et co-planaires. Utilisez -1 pour une analyse stricte.sketch est restitué avec l'objet esquisse.Pour convertir une esquisse en objet Draft, utilisez la méthode draftify du module Draft.
draftify(objectslist, makeblock=False, delete=True)
objectslist contient les objets à convertir. Il s'agit soit d'un objet unique, soit d'une liste d'objets.makeblock est True, les objets convertis sont regroupés dans un Part::Part2DObject.delete est True, les objets sources sont supprimés.Exemple :
import FreeCAD as App
import Draft
doc = App.newDocument()
rectangle = Draft.make_rectangle(2000, 1000)
circle = Draft.make_circle(500)
doc.recompute()
sketch_from_draft = Draft.make_sketch([rectangle, circle], autoconstraints=True, delete=False, radiusPrecision=0)
doc.recompute()
draft_from_sketch = Draft.draftify(sketch_from_draft, delete=False)
doc.recompute()